##
## The downloaded binary packages are in
## /var/folders/m9/3jl13d857f96bhbnhm_9fxhr0000gn/T//Rtmp1j2H57/downloaded_packages
##
## The downloaded binary packages are in
## /var/folders/m9/3jl13d857f96bhbnhm_9fxhr0000gn/T//Rtmp1j2H57/downloaded_packages
##
## The downloaded binary packages are in
## /var/folders/m9/3jl13d857f96bhbnhm_9fxhr0000gn/T//Rtmp1j2H57/downloaded_packages
##
## The downloaded binary packages are in
## /var/folders/m9/3jl13d857f96bhbnhm_9fxhr0000gn/T//Rtmp1j2H57/downloaded_packages
1 Introduction
PlayerUnknown’s Battlegrounds (PUBG) est un jeu vidéo multijoueur en ligne de type battle royale développé et édité par PUBG Corporation. L’objectif du jeu est de devenir le dernier joueur ou la dernière équipe en vie en éliminant les autres joueurs. Les joueurs commencent sans équipement et sont largués sur une île où ils doivent trouver des armes, des véhicules et d’autres ressources pour survivre. Le jeu est disponible sur plusieurs plateformes, notamment Microsoft Windows, Xbox One, PlayStation 4, Android et iOS.
Dans ce projet, nous allons analyser un jeu de données contenant des statistiques de jeu de 4000 joueurs de PUBG. Notre objectif est de découvrir des tendances, d’identifier des comportements typiques des joueurs et de comprendre comment ces éléments influencent le succès dans le jeu. # Présentation des données
Commençons par afficher les premières lignes de notre jeu de données.
| WinRatio | TimeSurvived | RoundsPlayed | Wins | Top10s | Top10Ratio | Losses | DamagePg | HeadshotKillsPg | HealsPg | KillsPg | MoveDistancePg | TimeSurvivedPg | Kills | Assists | HeadshotKills | LongestTimeSurvived | WalkDistance | RideDistance | MoveDistance | AvgWalkDistance | AvgRideDistance | Heals | Boosts | DamageDealt | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Escapist | 4.26 | 35776.89 | 47 | 2 | 6 | 12.8 | 45 | 235.91 | 0.30 | 0.66 | 1.96 | 2845.92 | 761.21 | 92 | 7 | 14 | 2027.78 | 63798.99 | 69959.20 | 133758.20 | 1357.42 | 1488.49 | 31 | 57 | 11087.66 |
| inkop | 0.00 | 2567.00 | 2 | 0 | 0 | 0.0 | 2 | 130.78 | 0.00 | 5.00 | 1.50 | 2106.94 | 1283.50 | 3 | 0 | 0 | 1433.77 | 4213.88 | 0.00 | 4213.88 | 2106.94 | 0.00 | 10 | 5 | 261.55 |
| Shanks | 13.33 | 34681.05 | 30 | 4 | 7 | 23.3 | 26 | 392.68 | 1.07 | 0.83 | 3.37 | 3350.91 | 1156.04 | 101 | 5 | 32 | 1972.75 | 45673.62 | 54853.70 | 100527.32 | 1569.02 | 1742.89 | 25 | 53 | 11780.34 |
| Ace_Finessed_It | 0.00 | 10618.52 | 11 | 0 | 3 | 27.3 | 11 | 230.63 | 0.27 | 1.18 | 2.36 | 3017.29 | 965.32 | 26 | 0 | 3 | 1740.82 | 18966.67 | 14223.50 | 33190.17 | 1724.24 | 1293.05 | 13 | 18 | 2536.93 |
| MasterOfTheEnder | 8.57 | 36369.04 | 35 | 3 | 5 | 14.3 | 32 | 188.18 | 0.11 | 0.91 | 1.66 | 2260.34 | 1039.12 | 58 | 0 | 4 | 1953.06 | 57317.87 | 21793.88 | 79111.75 | 1638.66 | 836.82 | 32 | 32 | 6586.29 |
| MassacreX479 | 18.18 | 41830.97 | 33 | 6 | 15 | 45.5 | 27 | 345.49 | 0.52 | 2.15 | 3.21 | 2790.69 | 1267.61 | 106 | 8 | 17 | 1967.35 | 48168.15 | 43924.51 | 92092.66 | 1599.53 | 1493.30 | 71 | 98 | 11401.22 |
Le jeu de données est composé de 4000 observations et 25 variables. Les variables sont les suivantes :
| Nom de la variable | Description |
|---|---|
WinRatio |
Ratio de victoire |
TimeSurvived |
Temps total survécu |
RoundsPlayed |
Parties jouées |
Wins |
Nombre de Victoires |
Top10s |
Nombre de Top 10 |
Top10Ratio |
Ratio top 10 |
Losses |
Nombre Défaites |
DamagePg |
Dégâts par partie |
HeadshotKillsPg |
Tirs à la tête par partie |
HealsPg |
Soins par partie |
KillsPg |
Tués par partie |
MoveDistancePg |
Distance parcourue par partie |
TimeSurvivedPg |
Temps de survie moyen par partie |
Kills |
Nombre de Tués |
Assists |
Nombre d’assists |
HeadshotKills |
Nombre de Tirs à la tête |
LongestTimeSurvived |
Temps de survie le plus long |
WalkDistance |
Distance parcourue à pied |
RideDistance |
Distance parcourue en véhicule |
MoveDistance |
Distance parcourue |
AvgWalkDistance |
Distance moyenne à pied |
AvgRideDistance |
Distance moyenne en véhicule |
Heals |
Nombre de Soins utilisés |
Boosts |
Nombre de Boosts utilisés |
DamageDealt |
Dégâts Total infligés |
2 Traitement et compréhension des données
2.1 Detection des valeurs manquantes et abérantes
## [1] 0
Il n’y a pas de valeurs manquantes dans le jeu de données. Cependant, il y a 9 joueurs qui ont parcouru une distance à pied de 0m au cours de leurs parties jouées et qui possèdent aucune statistique de jeu. Nous avons fait le choix de les supprimer.
| WinRatio | TimeSurvived | RoundsPlayed | Wins | Top10s | Top10Ratio | Losses | DamagePg | HeadshotKillsPg | HealsPg | KillsPg | MoveDistancePg | TimeSurvivedPg | Kills | Assists | HeadshotKills | LongestTimeSurvived | WalkDistance | RideDistance | MoveDistance | AvgWalkDistance | AvgRideDistance | Heals | Boosts | DamageDealt | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chadology | 0 | 818.56 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 818.56 | 0 | 0 | 0 | 818.56 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
| Na_ya_ | 0 | 1340.33 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 1340.33 | 0 | 0 | 0 | 1340.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
| kuntt | 0 | 141.59 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 141.59 | 0 | 0 | 0 | 141.59 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
| gstq | 0 | 814.69 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 814.69 | 0 | 0 | 0 | 814.69 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
| Learpholl | 0 | 4696.64 | 5 | 0 | 0 | 0 | 5 | 0 | 0 | 0 | 0 | 0 | 939.33 | 0 | 0 | 0 | 1396.20 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
| Daneara | 0 | 1181.29 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 1181.29 | 0 | 0 | 0 | 1181.29 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
| Davexxx | 0 | 292.35 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 292.35 | 0 | 0 | 0 | 292.35 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
| MIRAGE | 0 | 841.48 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 841.48 | 0 | 0 | 0 | 841.48 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
| famburger | 0 | 152.38 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 152.38 | 0 | 0 | 0 | 152.38 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
2.2 Choix sur les données
Dans un premier temps, nous avons constaté que la variable
RoundsPlayed est une variable quantitative qui représente
le nombre de parties jouées par chaque joueur. Nous avons remarqué que
plusieurs joueurs ont joué un nombre très faible de parties, ce qui peut
fausser les résultats de notre analyse, par exemple des joueurs ont un
WinRatio de 100% alors qu’ils n’ont joué qu’une partie,
cela n’est pas suffisant pour déterminer leur niveau de performance.
Nous avons donc décidé de ne pas tenir compte des joueurs ayant joué
moins de 5 parties.
De plus, nous avons remarqué que les variables expliquent des
statistiquent différents. Nous avons d’une part les statistiques par
jeu, avec le suffixe Pg et d’autre les statistiques
totales. Nous avons décidé de ne pas tenir compte des statistiques par
totales pour notre analyse. En effet, ces statistiques peuvent être
biaisées par le nombre de parties jouées. Par exemple, un joueur qui a
joué 1000 parties aura forcément un nombre de dégats plus élevé qu’un
joueur qui a joué 100 parties. Nous avons donc décidé de ne pas tenir
compte des variables suivantes : DamageDealt,
Heals, Boosts, Kills,
Assists, HeadshotKills,
LongestTimeSurvived, TimeSurvived,
WalkDistance, RideDistance,
MoveDistance. Nous avons décidé de garder les variables de
type ratio, qui rapportent les statistiques par partie jouée.
3 Statistique descriptive
3.1 Répartition des joueurs par nombre de parties jouées
La majorité des joueurs ont joué entre 5 et 100 parties. Il y a très peu de joueurs qui ont joué plus de 250 parties et ce nombre continue de décroitre avec l’augmentation du nombre de partie jouée.
3.2 Répartition des joueurs par ratio de victoire
On voit que la majorité des joueurs ont un ratio de victoire compris entre 0 et 20%. Il y a très peu de joueurs qui ont un ratio de victoire supérieur à 20%. On peut en déduire que la majorité des joueurs ne sont pas des joueurs compétitifs ou professionnels.
3.3 Répartition des joueurs par ratio de top 10
La répartition semble suivre une loi normale. On observe aussi que la
majorité des joueurs ont un ratio de top 10 compris entre 0 et 50%. Il y
a très peu de joueurs qui ont un ratio de top 10 supérieur à 50%.
3.4 Répartition des joueurs par dégâts par partie
3.5 Répartition des joueurs par tirs à la tête par partie
Peu de joueurs parviennent à réaliser des tirs à la tête. La majorité des joueurs ont un ratio de tirs à la tête par partie compris entre 0 et 0.5. Il y a très peu de joueurs qui ont un ratio de tirs à la tête supérieur à 0.5.
3.6 Répartition des joueurs par soins par partie
3.7 Répartition des joueurs par tués par partie
3.8 Répartition des joueurs par distance parcourue par partie
Cette distribution semble suivre une loi normale.
3.9 Répartition des joueurs par temps de survie par partie
On observe sur ce graphique que la distribution semble suivre une loi normale.
4 Analyse multivariée
4.1 Pairs
On étudie la relation linéaire ou non entre les différentes variables.
Sur ces graphiques, nous ne pouvons pas observer des groupes qui se distinguent
4.2 Matrice de corrélation
On peut observer que les variables KillsPg et
DamagePg sont fortement corrélées. De même pour les
variables TimeSurvived et Top10Ratio. Les
autres variables sont faiblement corrélées entre elles.
4.3 Analyse en composantes principales
On réalise une ACP pour réduire la dimensionnalité des données.
## eigenvalue percentage of variance cumulative percentage of variance
## comp 1 5.22184965 47.4713605 47.47136
## comp 2 1.93900195 17.6272904 65.09865
## comp 3 1.02036146 9.2760132 74.37466
## comp 4 0.82528218 7.5025653 81.87723
## comp 5 0.64736617 5.8851470 87.76238
## comp 6 0.52865611 4.8059647 92.56834
## comp 7 0.33133616 3.0121469 95.58049
## comp 8 0.22074053 2.0067320 97.58722
## comp 9 0.15538166 1.4125606 98.99978
## comp 10 0.09891151 0.8991955 99.89898
## comp 11 0.01111262 0.1010238 100.00000
On remarque ques les 3 premières composantes principales expliquent
presque 75% de la variance totale. On remarque aussi que les variables
KillsPg, DamagePg,
HeadshotKillsPg et HealsPg sont corrélées
positivements entre elles. Les variables MoveDistancePg et
TimeSurvivedPg, … sont également corrélées positivement
entre elles. Mais ces 2 groupes de variables semblent être indépendants
entre eux.
5 Classification Ascendante Hiérarchique
5.1 Normalisation des données
Nos données ne possèdent pas la même échelle (unité). Il est donc nécessaire de les normaliser.
5.2 CAH distance de Ward D2
On commence par calculer la matrice des distances euclidiennes, puis on effectue l’ACP et enfin on calcule le dendrogramme.
On représente la perte d’inerties en fonction du nombre de clusters afin de déterminer le nombre optimal de clusters.
En appliquant la méthode “du coude”, on peut voir que le nombre de clusters optimal est de 3. Representons maintenant ces clusters.
5.3 CAH distance de Ward D
On représenté la perte d’inerties en fonction du nombre de clusters afin de déterminer le nombre optimal de clusters.
En appliquant la méthode “du coude”, on peut voir que le nombre de clusters optimal est de 3. Representons maintenant ces clusters.
5.4 CAH distance du saut minimal
Cette distance sépare les individus selon la plus petite distance de couple (a, b) appartenant à A et B. Les avantages de cette distance sont qu’elle permet de faire des groupes bien séparés. Cependant, les groupes peuvent être très étendus.
On represente la perte d’inerties en fonction du nombre de clusters afin de déterminer le nombre optimal de clusters.
En appliquant la méthode “du coude”, on peut voir que le nombre de clusters optimal est de 2. Representons maintenant ces clusters.
On observe que le découpage en 2 groupes n’est pas optimal.
5.5 CAH distance du saut maximal
Cette distance sépare les individus selon la plus grande distance de couple (a, b) appartenant à A et B. L’avantage de cette distance est qu’elle permet de faire des groupes compactes. Un de ses inconvenients sera que les groupes sont pe séparés.
On represente la perte d’inerties en fonction du nombre de clusters afin de déterminer le nombre optimal de clusters.
En appliquant la méthode “du coude”, on peut voir que le nombre de clusters optimal est de 2. Representons maintenant ces clusters.
La aussi, on observe que le découpage n’est pas optimal.
5.6 Comparaison des différentes méthodes
Maintenant que nous avons effectué la classification ascendante hiérarchique avec différentes méthodes de liaison, nous allons comparer les résultats obtenus. Notamment, nous allons comparer les inerties intra-classe pour chaque méthode de liaison.
On remarque que si on compare les inerties intra-classe pour chaque type de liaison, il s’agit de la méthode de Single puis Complete qui donne les meilleurs résultats. Cependant, l’évolution globale de l’inertie et l’aspect du dendrogramme nous incite à privilégier la stratégie de Ward ou Ward.d2 et donc un découpage en 3 groupes.
En effet, nous jugeons que faire 2 groupes n’est pas pertinent pour notre étude au vu de la complexité des differents profils de joueurs. De plus, les représentations graphiques avec ces types de liaisons ne sont pas optimales. Nous allons donc nous baser sur la méthode de Ward.d2 qui nous donne 3 groupes et qui a une inertie intra-classe plus faible que Ward.
6 K-means et K-medoïds
6.1 K-means
On va maintenant appliquer la méthode des K-means pour comparer les résultats obtenus avec la CAH. On commence par déterminer le nombre de cluster que l’on souhaite obtenir. Pour cela, on utilise la méthode du coude.
Ici, on choisirait 3 clusters. On utilise l’option
nstart du kmeans pour stabiliser les résultats, afin que
les résultats sont stables lorsque nous relançons plusieurs fois le
code.
Nous pouvons représenter les groupes obtenus avec la méthode des K-means.
6.2 K-médoïdes
Nous allons maintenant appliquer la méthode des K-médoïdes afin de voir si un clustering ne prennant pas en compte les outliers peut être plus pertinent. Nous allons utiliser 3 clusters puis comparer les résultats obtenus avec les K-means.
6.3 Comparaison entre K-means et K-medoïds
Nous allons maintenant comparer les groupes obtenus avec les deux méthodes. On commence par comparer la taille des groupes que nous avons obtenu avec chacune des méthodes.
##
## 1 2 3
## 1944 1397 327
##
## 1 2 3
## 1661 693 1314
On peut voir que les tailles des groupes obtenus avec les deux méthodes sont relativement proches. Cependant, il y a quelques différences, la méthode des K-médoïds semble donner des groupes plus équilibrés. Nous allons maintenant comparer la qualité des groupes obtenus.
Pour cela, nous allons utiliser la méthode de la silhouette pour comparer les groupes obtenus avec les deux méthodes. L’indice de silhouette est une mesure de la qualité d’un clustering, qui évalue à quel point chaque observation est bien regroupée par rapport aux autres observations de son propre cluster par rapport aux observations des autres clusters. Il varie de -1 à 1, où :
- Une valeur proche de +1 indique que l’observation est bien placée dans son propre cluster et est éloignée des autres clusters.
- Une valeur proche de 0 indique que l’observation est près de la frontière entre deux clusters.
- Une valeur proche de -1 indique que l’observation est mal placée dans son propre cluster et serait mieux placée dans un autre cluster.
## [1] 0.2306691
## [1] 0.1739784
Avec l’indice de silhouette, on peut voir que la méthode des K-means donne un meilleur résultat que les K-médoïdes. Cela signifie que les groupes obtenus avec les K-means sont plus homogènes que ceux obtenus avec les K-means.
7 Modèle des CAH rencentré par les K-means
On va maintenant essayer de centrer les groupes obtenus avec la CAH en utilisant les K-means. Pour cela, on va utiliser les centres des classes obtenus avec les K-means comme centres de classe pour les groupes obtenus avec la CAH. Cette méthode permet de mieux discriminer les groupes obtenus avec la CAH en les recentrant autour des centres de classe obtenus avec les K-means.
## [1] 0.2401244
##
## 1 2 3
## 1993 1406 269
On peut voir que les groupes obtenus avec la CAH recentrée par les K-means sont plus homogènes que ceux obtenus avec la CAH seule. Cependant les groupes obtenus avec les K-means sont similaires, voir identiques, à ceux obtenus avec les K-means seuls. Cela signifie que les K-means ont déjà bien séparé les groupes et que la CAH n’a pas apporté d’amélioration significative. On va donc garder les groupes obtenus avec les K-means pour la suite de l’analyse.
8 Modele de Mélange
Le mélange de gaussiennes est un modèle de clustering qui permet de modéliser des données en supposant qu’elles sont issues d’un mélange de plusieurs distributions gaussiennes. Chaque distribution gaussienne représente un cluster. Le modèle de mélange de gaussiennes est souvent utilisé pour des données qui ne sont pas linéairement séparables.
Dans un premier temps nous pouvons rechercher la partition idéales au regard du critère BIC.
## [1] -0.04829781
La partition en 8 groupes semble être la plus adaptée au regard du critère BIC. Cependant, l’indice de silhouette est pratiquement nulle. Cela signifie que les groupes obtenus avec le modèle de mélange de gaussiennes ne sont pas homogènes et donc que les groupes ne sont pas bien séparés.
Nous pouvons essayer de réduire le nombre de groupes pour voir si cela améliore l’indice de silhouette. Prenons par exemple 3 groupes pour la coherence de notre analyse.
## [1] -0.00106766
Bien que le modèle à 3 clusters semble nous donner de meilleurs résultats que la selection par le critère du BIC, la qualité du modèle reste en dessous des performances de nos autres algorithmes. On conclut que le modèle de mélange de gaussiennes n’est pas adapté pour notre jeu de données.
9 Suggestion de groupes
Grâce à la méthode des K-means, nous avons obtenu 3 groupes de joueurs de PUBG. Nous allons maintenant les analyser et les comparer afin de proposer une description des différents profils de joueurs.
Dans un premier temps nous pouvons regarder les moyennes des variables normalisé pour chaque cluster afin d’observer les différences entre les groupes.
Il semble que les différents groupes se distinguent bien sur l’ensemble des variables, ce qui est encourageant pour la qualité de la segmentation. En examinant les données, nous constatons que le groupe 1 présente des valeurs très élevées et positives sur l’ensemble des variables, suggérant ainsi que ce groupe a de meilleures performances que les autres. En revanche, le groupe 3 affiche des valeurs négatives sur ces mêmes variables, indiquant un niveau de compétence inférieur aux autres catégories. Quant au groupe 2, il se situe entre les deux autres groupes, ce qui laisse penser qu’il regroupe les joueurs de niveau moyen.
Une différence notable entre ces groupes concerne la variable RoundsPlayed, qui est plus élevée pour le groupe 3. Cela suggère que ce groupe est composé de joueurs ayant un nombre de parties plus élevé malgré un niveau de compétence faible. Cette observation peut être intéressante pour comprendre les comportements des joueurs et leurs habitudes de jeu.
##
## 1 2 3
## 53.00 38.09 8.91
Nous pouvons également examiner la répartition des joueurs dans les différents groupes. La segmentation semble cohérente : nous retrouvons 53% des joueurs dans le groupe Faible, ce qui correspond aux nouveaux joueurs et à ceux de faible niveau, représentant ainsi la majorité des joueurs. Ensuite, 38% des joueurs se trouvent dans le groupe Intermédiaire, regroupant les joueurs de niveau moyen. Enfin, seulement 9% des joueurs sont classés dans le groupe Fort, représentant l’élite des joueurs de PUBG, une poignée de joueurs d’exception.
Nous allons maintenant regarder les statistiques descriptives pour chaque groupe.
| cluster | WinRatio_mean | RoundsPlayed_mean | Top10Ratio_mean | DamagePg_mean | HeadshotKillsPg_mean | HealsPg_mean | KillsPg_mean | MoveDistancePg_mean | TimeSurvivedPg_mean | AvgWalkDistance_mean | AvgRideDistance_mean | WinRatio_min | RoundsPlayed_min | Top10Ratio_min | DamagePg_min | HeadshotKillsPg_min | HealsPg_min | KillsPg_min | MoveDistancePg_min | TimeSurvivedPg_min | AvgWalkDistance_min | AvgRideDistance_min | WinRatio_max | RoundsPlayed_max | Top10Ratio_max | DamagePg_max | HeadshotKillsPg_max | HealsPg_max | KillsPg_max | MoveDistancePg_max | TimeSurvivedPg_max | AvgWalkDistance_max | AvgRideDistance_max |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | 1.730787 | 117.20782 | 11.96867 | 146.5835 | 0.2537500 | 1.165751 | 1.220098 | 2144.489 | 820.309 | 1228.493 | 962.4443 | 0 | 5 | 0.0 | 10.52 | 0 | 0.00 | 0.00 | 260.87 | 348.29 | 243.62 | 0 | 20 | 1443 | 33.3 | 355.26 | 1.06 | 5.20 | 3.45 | 4119.45 | 1240.93 | 2926.76 | 5252.83 |
| 2 | 4.941833 | 60.43522 | 24.66285 | 204.6462 | 0.3790480 | 1.635175 | 1.757251 | 3370.366 | 1073.944 | 1710.248 | 1784.9831 | 0 | 5 | 0.0 | 52.13 | 0 | 0.00 | 0.35 | 1362.65 | 697.70 | 479.72 | 0 | 25 | 561 | 63.6 | 465.78 | 1.25 | 8.03 | 4.09 | 7159.64 | 1590.52 | 4012.96 | 8907.22 |
| 3 | 17.305719 | 30.09480 | 40.79235 | 377.5590 | 0.9815291 | 1.966881 | 3.476055 | 3994.616 | 1253.432 | 2015.098 | 2015.4482 | 0 | 5 | 13.6 | 141.53 | 0 | 0.12 | 1.50 | 1432.53 | 706.44 | 733.79 | 0 | 80 | 423 | 100.0 | 1205.89 | 8.30 | 12.67 | 11.50 | 9147.81 | 1821.55 | 3517.07 | 7658.38 |
En se basant sur les résultats obtenus, nous pouvons suggérer une segmentation des joueurs de PUBG en 3 groupes :
- Groupe 1 : “Noob” : Ce groupe regroupe les mauvais joueurs. Ils jouent beaucoup mais ont un faible nombre de kills, de dégâts infligés et de temps de survie. Ce sont des joueurs qui jouent souvent mais qui ne sont pas très compétents. Il faudrait songer à changer de jeu.
- Groupe 2 : “Mid” : Ce groupe regroupe les joueurs quotidien moyen. Ils ont un nombre moyen de kills, de dégâts infligés et de temps de survie. Ce sont des joueurs qui jouent régulièrement et qui ont un niveau de compétence moyen.
- Groupe 3 :“Pro” : Ce groupe regroupe les joueurs compétitifs. Ils font moins de parties que les autres groupes mais ont un nombre élevé de kills, de dégâts infligés et de temps de survie. Ce sont des joueurs qui jouent moins souvent mais qui sont très compétents.
En fonction de ces groupes, nous pourrions proposer des recommandations personnalisées pour chaque type de joueur. Par exemple, pour les joueurs du groupe 2, nous pourrions leur recommander de s’entraîner davantage pour améliorer leur niveau de jeu. Pour les joueurs du groupe 3, nous pourrions leur recommander de participer à des tournois ou à des compétitions pour mettre en valeur leurs compétences.
9.1 Modèle de mélange pour identifier des sous-groupes
Le modèle de mélange de gaussiennes peut également être utile pour identifier des sous-groupes au sein des clusters obtenus avec d’autres méthodes de clustering, afin d’observer des structures plus fines dans les données.
Observation de sous groupes au seins de chaque cluster des kmeans.
Il semble que le modèle de mélange de gaussiennes identifie un nombre optimal de 6 clusters pour chaque cluster, ce qui suggère que chaque groupe obtenu avec les K-means peut être subdivisé en 9 sous-groupes selon cette méthode. Cette approche pourrait être bénéfique pour identifier des profils de joueurs plus spécifiques au sein de chaque groupe. Cependant, il est à noter que les groupes obtenus avec le modèle de mélange de gaussiennes présentent un chevauchement, ce qui indique une séparation moins nette entre les groupes. Cette observation pourrait être attribuée au fait que les données ne correspondent pas parfaitement à des distributions gaussiennes, compromettant ainsi la capacité du modèle à les segmenter de manière précise.
9.2 CAH pour identifier des sous-groupes
Pour le groupe des “Pro”, la CAH identifie un nombre optimal de 2 clusters, ce qui suggère que ce groupe peut être subdivisé en 2 sous-groupes distincts. En effet, une dizaine de joueurs semblent se détacher du groupe. Cette approche pourrait être utile pour identifier des profils de joueurs plus spécifiques au sein du groupe, en fonction de leurs caractéristiques et de leurs performances.
## cutree_pro
## 1 2
## 313 14
| WinRatio | RoundsPlayed | Top10Ratio | DamagePg | HeadshotKillsPg | HealsPg | KillsPg | MoveDistancePg | TimeSurvivedPg | AvgWalkDistance | AvgRideDistance | |
|---|---|---|---|---|---|---|---|---|---|---|---|
| Y00NR00T | 29.41 | 17 | 58.8 | 683.52 | 2.29 | 2.59 | 6.59 | 6409.14 | 1557.81 | 1822.36 | 4586.78 |
| Woven | 28.57 | 7 | 57.1 | 549.32 | 2.71 | 1.00 | 5.43 | 3110.94 | 1195.99 | 2077.26 | 1033.69 |
| 78787878 | 50.00 | 6 | 66.7 | 909.81 | 1.83 | 0.83 | 8.00 | 4292.88 | 1277.86 | 2537.19 | 1755.70 |
| WOwwwWwwww | 20.00 | 35 | 25.7 | 662.70 | 3.77 | 1.09 | 6.51 | 2686.75 | 1092.84 | 1827.17 | 1650.70 |
| kolbaska666 | 80.00 | 5 | 100.0 | 932.91 | 3.40 | 1.00 | 9.80 | 4687.77 | 1800.62 | 2427.97 | 2259.80 |
| PPX-fv | 38.46 | 13 | 53.8 | 509.65 | 3.08 | 0.62 | 5.08 | 3414.60 | 1403.36 | 1469.56 | 2323.90 |
| TAEYEON6666 | 20.00 | 10 | 40.0 | 1205.89 | 8.30 | 1.20 | 11.50 | 4048.42 | 1212.92 | 3109.39 | 1048.43 |
| qun81996107 | 15.38 | 39 | 20.5 | 538.33 | 4.10 | 1.05 | 5.46 | 2089.09 | 851.92 | 1552.73 | 315.09 |
| MickyJUn | 37.50 | 8 | 37.5 | 649.93 | 4.50 | 0.12 | 6.12 | 2838.42 | 1050.76 | 1297.06 | 1541.36 |
| DouYuTianKong | 60.00 | 5 | 60.0 | 858.58 | 4.40 | 0.60 | 7.80 | 5260.28 | 1273.17 | 1991.39 | 3268.90 |
| Bito | 30.00 | 10 | 60.0 | 913.41 | 2.20 | 4.60 | 8.20 | 5075.62 | 1464.80 | 3056.94 | 2004.51 |
| BattIeground | 50.00 | 12 | 66.7 | 667.94 | 2.58 | 1.00 | 6.67 | 3227.36 | 1404.29 | 1423.55 | 1274.21 |
| test_BBD | 40.00 | 5 | 40.0 | 1061.45 | 5.40 | 0.80 | 11.20 | 3332.35 | 1131.50 | 1823.36 | 1508.99 |
| TwitchTvPr0phie | 16.67 | 6 | 50.0 | 836.83 | 2.17 | 1.83 | 7.33 | 3875.68 | 934.79 | 983.38 | 2892.30 |
Graphiquement, on peut observer que les deux groupes se distinguent
principalement par les variables KillsPg,
HeadshotKillsPg, WinRatio et
DamagePg. Le second groupe semble avoir des performances
plus élevées dans ces domaines, tandis que le premier groupe semble
avoir des performances plus faibles. On distingue donc 2 catégories
:
- Les joueurs “élites”, qui ont des performances élevées dans les domaines clés tels que les kills, les headshots et les dégâts.
- Les joueurs “forts”, qui ont des performances un peu plus faibles dans ces domaines.
On y observe ainsi un impact significatif sur la variable
WinRatio, qui est un indicateur clé de la performance des
joueurs. Cette segmentation dans ce sous-groupe nous montre que la
différence de niveau entre un bon joueur et un excellent joueur est
importante.
10 Conclusion
Dans ce projet, nous avons exploré différentes méthodes de clustering pour segmenter les joueurs de PUBG en fonction de leurs performances. Nous avons utilisé la classification ascendante hiérarchique (CAH), les K-means, les K-médoïdes et les modèles de mélange pour regrouper les joueurs en différents groupes. Nous avons comparé les résultats obtenus avec ces différentes méthodes et avons proposé une segmentation des joueurs en 3 groupes distincts. En fonction de ces groupes, nous avons suggéré des recommandations personnalisées pour chaque type de joueur. Ce projet montre comment l’analyse de clustering peut être utilisée pour segmenter les joueurs en fonction de leurs caractéristiques et de leurs performances, et comment ces informations peuvent être utilisées pour proposer des recommandations personnalisées et améliorer l’expérience des joueurs.